//
// Created by 11510 on 2024/6/12.
//
#include <iostream>
using namespace std;

void print(int x){
    printf("print %d\n", x);
}

void display(int x){
    printf("display %d\n", x);
}


/**
 * 给这种类型的指针变量总结处一个类型名称
 */
typedef void (*Function)(int);

void test0(){
    /* 省略形式 */
    void (*func1)(int) = print;
    func1(1);

    /* 完整形式 */
    void (*func2)(int) = &display;
    (*func2)(1);


    /* void (*)(int) func3 只能作为逻辑类型，不能在代码中使用 */
    /**
     * Function是一类指针的类型
     */
    Function f1 = print;
    (*f1)(11);

}

int main() {
    test0();
    return 0;
}